package com.yanfan.parking.domain;

import java.math.BigDecimal;

import com.alibaba.fastjson2.JSONObject;
import lombok.Data;

import java.io.Serializable;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.yanfan.common.annotation.Excel;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.FieldFill;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 停车场出场记录对象 nj_out_parking_record
 *
 * @author genluo
 * @date 2024-10-28
 */

@Data
public class NjOutParkingRecord implements Serializable{

private static final long serialVersionUID=1L;

    /**
     * 业务流水号
     */
    @Excel(name = "业务流水号")
    @TableId(value = "biz_sn" , type = IdType.ASSIGN_ID) // 字符串类型使用雪花算法
    private String bizSn;

    /**
     * 动作时间
     */
    @Excel(name = "动作时间")
    private String actTime;

    /**
     * 动作类型
     */
    @Excel(name = "动作类型")
    private String actType;

    @TableField(exist = false)
    private JSONObject commParam;

    @TableField(exist = false)
    private JSONObject discountFree;

    @TableField(exist = false)
    private String[] discountMoney;

    /**
     * 增加泊位
     */
    @Excel(name = "增加泊位")
    private String addBerth;

    /**
     * 到达时间
     */
    @Excel(name = "到达时间")
    private String arriveTime;

    /**
     * 泊位ID
     */
    @Excel(name = "泊位ID")
    private String berthId;

    /**
     * 业务类型
     */
    @Excel(name = "业务类型")
    private String businessType;

    /**
     * 车牌号
     */
    @Excel(name = "车牌号")
    private String carNum;

    /**
     * 车牌颜色
     */
    @Excel(name = "车牌颜色")
    private String carNumColor;

    /**
     * 车辆类型
     */
    @Excel(name = "车辆类型")
    private String carType;

    /**
     * 访客剩余车位数
     */
    @Excel(name = "访客剩余车位数")
    private Long guestRemainNum;

    /**
     * 是否线下支付
     */
    @Excel(name = "是否线下支付")
    private String isOfflinePay;

    /**
     * 离开时间
     */
    @Excel(name = "离开时间")
    private String leaveTime;

    /**
     * 月租剩余车位数
     */
    @Excel(name = "月租剩余车位数")
    private Long monthlyRemainNum;

    /**
     * 订单号
     */
    @Excel(name = "订单号")
    private String orderNo;

    /**
     * 车辆颜色
     */
    @Excel(name = "车辆颜色")
    private String parkingCarColor;

    /**
     * 车辆品牌标识
     */
    @Excel(name = "车辆品牌标识")
    private String parkingCarLogo;

    /**
     * 车辆类型
     */
    @Excel(name = "车辆类型")
    private String parkingCarType;

    /**
     * 停车场编号
     */
    @Excel(name = "停车场编号")
    private String parkingLot;

    /**
     * 停车时长（分钟）
     */
    @Excel(name = "停车时长（分钟）")
    private Long parkingTimeLength;

    /**
     * 支付金额
     */
    @Excel(name = "支付金额")
    private BigDecimal payMoney;

    /**
     * 支付类型
     */
    @Excel(name = "支付类型")
    private String paymentType;

    /**
     * 闸道设备通道ID
     */
    @Excel(name = "闸道设备通道ID")
    private String sluiceDevChnId;

    /**
     * 闸道设备通道名称
     */
    @Excel(name = "闸道设备通道名称")
    private String sluiceDevChnName;

    /**
     * 总剩余车位数
     */
    @Excel(name = "总剩余车位数")
    private Long totRemainNum;

    /**
     * 凭证号
     */
    @Excel(name = "凭证号")
    private String voucherNo;

    /**
     * 凭证类型
     */
    @Excel(name = "凭证类型")
    private String voucherType;


}
